clear
%oad ../parameter_sandbox_ces/eq_mit_mass.mat 
load ../prod/calibration_v3/stochastic_discount_factor/ces_sdf/eq_mit_tfp.mat
%load ../prod/calibration_v3/sandbox_ces/eq_mit_mass.mat
eq_mit_ces = eq_mit;

%load ../parameter_sandbox_wage_rule/eq_mit_mass.mat 
load ../prod/calibration_v3/stochastic_discount_factor/kimball_sdf/eq_mit_tfp.mat
%load ../prod/calibration_v3/sandbox/eq_mit_mass.mat


%% get actual data - mass of firms

%Ns = [1, 1 - .04];% + [0.0000000 -0.7654149 -4.1384743 -5.6245749 -6.4591448 -5.1005793 -4.2323999]/100;
Ns = 1 - [0 6.69652130]/100;

prods = repmat(exp(glob.sf(:,2)), 1, options.T);

%% pick scaling coefficients


adj = sum(eq_mit.mu,1);
scx = 1; 

mass = sum(eq_mit.mu,1);
Ns = log_linear_scale(mass, scx)/mass(end);
Ns = Ns(1:50);

adj = sum(eq_mit_ces.mu,1);

scx_ces = 1;

%% compute cost-weighted markups
ngdp = sum(eq_mit.mu.*eq_mit.p.*eq_mit.y);
labor_bill = eq_mit.W'.*sum(eq_mit.l.*eq_mit.mu);
labor_share = (labor_bill./ngdp);

ngdp = sum(eq_mit_ces.mu.*eq_mit_ces.p.*eq_mit_ces.y);
labor_bill = eq_mit_ces.W'.*sum(eq_mit_ces.l.*eq_mit_ces.mu);
labor_share_ces = (labor_bill./ngdp);


%%
set(0,'defaultaxesfontname','cambria math') % beautify the axes a bit
set(0,'defaultTextFontName', 'cambria math')


close all

T = 15;
subplot(2,3,1)
mass = sum(eq_mit.mu,1);
plot(log_linear_scale(mass, scx)/mass(end), 'LineWidth', 4); xlim([1 T]); title('Mass of firms')
hold on
mass_ces = sum(eq_mit_ces.mu,1);
plot(log_linear_scale(mass_ces, scx_ces)/mass_ces(end), 'r-.', 'LineWidth', 4);

%plot(Ns, 'LineWidth', 4)
legend('Kimball', 'CES', 'Location', 'Southeast')

subplot(2,3,5)
plot(log_linear_scale(eq_mit.C, scx)/eq_mit.C(end), 'LineWidth', 4); xlim([1 T]);  title('Output')
hold on
plot(log_linear_scale(eq_mit_ces.C, scx_ces)/eq_mit_ces.C(end), 'r-.', 'LineWidth', 4); xlim([1 T]); ylim([.95 1]); title('Output')

subplot(2,3,6)
plot(log_linear_scale(eq_mit.W, scx)/eq_mit.W(end), 'LineWidth', 4); xlim([1 T]); ylim([.95 1]); title('Wage')
hold on
plot(log_linear_scale(eq_mit_ces.W, scx_ces)/eq_mit_ces.W(end),  'r-.', 'LineWidth', 4)
ylim([.97 1])

subplot(2,3,4)
plot(log_linear_scale(eq_mit.L, scx)/eq_mit.L(end), 'LineWidth', 4); xlim([1 T]); title('Employment')
hold on
plot(log_linear_scale(eq_mit_ces.L, scx_ces)/eq_mit_ces.L(end), 'r-.', 'LineWidth', 4); xlim([1 T]); title('Employment')

labor_share = 1./labor_share;
labor_share_ces = 1./labor_share_ces;

 subplot(2,3,2)
 plot((log_linear_scale(labor_share, scx))/labor_share(end), 'LineWidth', 4); xlim([1 T]); title('Markup')
 hold on
plot((log_linear_scale(labor_share_ces, scx_ces))/labor_share_ces(end), 'r-.', 'LineWidth', 4); xlim([1 T]); title('Markup')

subplot(2,3,3)

Ys    = repmat(eq_mit.C',glob.Nsf,1);
Z     = sum(eq_mit.y./Ys./prods.*eq_mit.mu);
tfp   = log_linear_scale(Z.^(-1), scx);

Ys    = repmat(eq_mit_ces.C',glob.Nsf,1);
Z     = sum(eq_mit_ces.y./Ys./prods.*eq_mit_ces.mu);
tfp_ces   = log_linear_scale(Z.^(-1), scx_ces);


plot(tfp/tfp(end), 'LineWidth', 4); xlim([1 T]);
hold on
plot(tfp_ces/tfp_ces(end),  'r-.', 'LineWidth', 4); xlim([1 T]);
ylim([.985 1])
title('Effective TFP')
set(gcf,'units','points','position',[10,10,1000,600])
set(findall(gcf,'-property','FontSize'),'FontSize',16)

print('-dpng', 'figures/sdf_kimball_vs_ces_tfp.png')



